diff --git a/django/core/checks/model_checks.py b/django/core/checks/model_checks.py
index 5c2266ca1d..875a92db45 100644
--- a/django/core/checks/model_checks.py
+++ b/django/core/checks/model_checks.py
@@ -35,8 +35,10 @@ def check_all_models(app_configs=None, **kwargs):
             indexes[model_index.name].append(model._meta.label)
         for model_constraint in model._meta.constraints:
             constraints[model_constraint.name].append(model._meta.label)
+
     for db_table, model_labels in db_table_models.items():
-        if len(model_labels) != 1:
+        app_labels = set(label.split('.')[0] for label in model_labels)
+        if len(app_labels) == 1 and len(model_labels) != 1:
             errors.append(
                 Error(
                     "db_table '%s' is used by multiple models: %s."
@@ -45,6 +47,7 @@ def check_all_models(app_configs=None, **kwargs):
                     id='models.E028',
                 )
             )
+
     for index_name, model_labels in indexes.items():
         if len(model_labels) > 1:
             model_labels = set(model_labels)
